Add timeout handling for S3 blob container async operations#18583
Add timeout handling for S3 blob container async operations#18583ashking94 merged 3 commits intoopensearch-project:mainfrom
Conversation
|
❕ Gradle check result for 805f91b: UNSTABLE Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #18583 +/- ##
============================================
- Coverage 72.76% 72.65% -0.11%
+ Complexity 68167 68117 -50
============================================
Files 5541 5541
Lines 313426 313462 +36
Branches 45479 45479
============================================
- Hits 228062 227748 -314
- Misses 66709 67165 +456
+ Partials 18655 18549 -106 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Planning to add some more logs to be able to debug better. |
|
❌ Gradle check result for 1ff0fff: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
Signed-off-by: Ashish Singh <ssashish@amazon.com>
|
❕ Gradle check result for 67e653b: UNSTABLE Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure. |
...ns/repository-s3/src/main/java/org/opensearch/repositories/s3/async/S3AsyncDeleteHelper.java
Outdated
Show resolved
Hide resolved
...ns/repository-s3/src/main/java/org/opensearch/repositories/s3/async/S3AsyncDeleteHelper.java
Show resolved
Hide resolved
Signed-off-by: Ashish Singh <ssashish@amazon.com>
* Add timeout handling for S3 blob container async operations Signed-off-by: Ashish Singh <ssashish@amazon.com> * Add logs to debug never completing future Signed-off-by: Ashish Singh <ssashish@amazon.com> * Incorporare PR review comments Signed-off-by: Ashish Singh <ssashish@amazon.com> --------- Signed-off-by: Ashish Singh <ssashish@amazon.com> (cherry picked from commit 2581c58) Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* Add timeout handling for S3 blob container async operations Signed-off-by: Ashish Singh <ssashish@amazon.com> * Add logs to debug never completing future Signed-off-by: Ashish Singh <ssashish@amazon.com> * Incorporare PR review comments Signed-off-by: Ashish Singh <ssashish@amazon.com> --------- Signed-off-by: Ashish Singh <ssashish@amazon.com> (cherry picked from commit 2581c58) Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
…18596) * Add timeout handling for S3 blob container async operations * Add logs to debug never completing future * Incorporare PR review comments --------- (cherry picked from commit 2581c58) Signed-off-by: Ashish Singh <ssashish@amazon.com> Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
…ch-project#18583) * Add timeout handling for S3 blob container async operations Signed-off-by: Ashish Singh <ssashish@amazon.com> * Add logs to debug never completing future Signed-off-by: Ashish Singh <ssashish@amazon.com> * Incorporare PR review comments Signed-off-by: Ashish Singh <ssashish@amazon.com> --------- Signed-off-by: Ashish Singh <ssashish@amazon.com>Signed-off-by: TJ Neuenfeldt <tjneu@amazon.com>
…ch-project#18583) * Add timeout handling for S3 blob container async operations Signed-off-by: Ashish Singh <ssashish@amazon.com> * Add logs to debug never completing future Signed-off-by: Ashish Singh <ssashish@amazon.com> * Incorporare PR review comments Signed-off-by: Ashish Singh <ssashish@amazon.com> --------- Signed-off-by: Ashish Singh <ssashish@amazon.com>
…ch-project#18583) * Add timeout handling for S3 blob container async operations Signed-off-by: Ashish Singh <ssashish@amazon.com> * Add logs to debug never completing future Signed-off-by: Ashish Singh <ssashish@amazon.com> * Incorporare PR review comments Signed-off-by: Ashish Singh <ssashish@amazon.com> --------- Signed-off-by: Ashish Singh <ssashish@amazon.com>
Description
This PR adds timeout handling for async operations in the S3 blob container to prevent snapshot deletion threads from getting stuck indefinitely. Previously, when S3 operations would hang or never complete, the snapshot deletion threadpool could get stuck with non-zero active thread count.
The change can be summarised as below -
getFutureValue()testDeleteTimeoutWithNeverCompletingAsyncDeletionFutureto verify timeout behaviorRelated Issues
Resolves #18314
Check List
[ ] API changes companion pull request created, if applicable.[ ] Public documentation issue/PR created, if applicable.By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.